Arrangement for and method of minimizing reading errors in bar code symbol readers

ABSTRACT

A reader generates a scanning beam for reading a bar code symbol on a selected item. The reader includes a database in which codes for all symbols to be read are stored, and frequency of use data indicative of how often each stored code has been read. A processor compares the code of the symbol being scanned with the stored codes. Upon a successful comparison, the code is processed as a valid code. Upon failure to match the code to one of the stored codes, a most likely code is selected as the valid code. The most likely code is based on the frequency of use data.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a reader for reading an indicia, forexample a reader for reading bar code symbols on products at a point ofsale transaction terminal.

2. Discussion of the Prior Art

In prior art readers comprising a scanner and a decoder, the scannergenerates a scanning spot which traverses the target indicia such as abar code symbol and light reflected from the bar code symbol is receivedby the decoder wherein a digital electrical signal is generated andanalyzed to decode the information contained in the bar code symbol.

When such a bar code reader is used, for example at a point of sale, toread a bar code symbol on a product being purchased the scanning beammay not be directed exclusively at the target bar code symbol but mayalso scan and be reflected by bar code symbols on neighboring itemswhich it was not intended to scan. The reflected scanning beam from theother items may be received by the decoder as a result of whichincorrect information may be generated. As a specific example of such aproblem, where a product being purchased is scanned at a supermarketpoint of sale the scanning beam may also be reflected by, for example,magazines on a magazine rack adjacent to a supermarket point of sale.

It will be appreciated therefore that the conventional bar code readingsystem can give rise to problems when items having bar code symbols arefound adjacent or nearby the item to be scanned.

U.S. Pat. No. 5,408,080 which is incorporated herein by referencedescribes a bar code scanner capable of automatically scanning bar codedata without a manually activated trigger to initiate a scan of bar codedata. The scanner includes a light source for illuminating the bar codesymbol, a photodiode array for detecting light reflected by the bar codesymbol, a CCD shift register for converting the data generated inparallel in the photodiode array to a serial format and a digitizercircuit for converting the data to digital pulses. The digitized signalcorresponding to the serial data is produced during a read-out periodand the signal is examined to establish whether a valid bar code symbolhas been read; a valid bar code symbol is indicated when the signalcomprises a given number of pulses (for example, eight pulses) eachpulse corresponding to a bar in the bar code symbol. The scannercontinues to scan until a valid bar code symbol has been identified atwhich point the scan cycle is terminated. The scan cycle is recommencedafter a predetermined number of successive read-out intervals followingthe reading of the valid bar code symbol. In order to ensure that thesame bar code is not read again the number of pulses in each of thepredetermined number of read-out intervals is monitored. U.S. Pat. No.5,408,080 relates only to a static beam or field of view optical readingsystem.

U.S. Pat. No. 5,324,924, which is commonly assigned with the presentapplication and incorporated herein by reference, describes anarrangement for decoding of bar code symbols in which a symbol isscanned by a light beam, light reflected from the symbol is sensed by adetector and the detected time widths (the length of time spent by thescanning light beam traversing a bar or space) are compared with athreshold value to determine if the bar code symbol is within theworking range of the bar code scanner. For example, if the detected timewidth is smaller than a predetermined threshold value then a bar codesymbol is outside a predetermined distance zone. A second evaluation isthen performed to establish whether the detected bar code symbol is avalid bar code symbol i.e. it has all of the characteristics of a validbar code symbol (for instance a check may be carried out to ensure thatthe detected bar code symbol has a sequence of bar and space widthswhich conform to the methodology of acceptable bar code symbols). Once asuccessful scan of a given bar code symbol has taken place any scans ofan identical bar code symbol within a predetermined time is ignored onthe assumption that it is the same bar code symbol that is being read.In a preferred embodiment the arrangement is provided in a gun-shapeddevice having a trigger allowing manual activation of the scanning lightbeam.

SUMMARY OF THE INVENTION

Accordingly it is a primary object of the present invention to provide areader which at least alleviates the difficulties mentioned above.

According to the invention there is still further provided a readerreading an indicia such as a bar code symbol, the reader comprising:

an optical arrangement for focusing a light beam within a field of viewon an indicia on a target to be read;

an sensor for detecting light reflected off the indicia and forgenerating an electrical signal indicative of the detected lightintensity; and

means for comparing the computed probability of specific indicia beingscanned with the known likelihood of such indicia being scanned basedupon frequency of usage data associated with each indicia stored in afile.

According to the invention there is still further provided a method ofreading an indicia such as a bar code symbol in which a reader comprisesan optical arrangement for focusing a light beam on an indicia; and

a sensor for detecting light reflected off the indicia in which:

a light beam is focused within a field of view on an indicia on thetarget to be read by the optical arrangement;

light reflected off the indicia is detected by the sensor and anelectrical signal indicative of the detected light intensity isgenerated; and

the computed probability of specific indicia being scanned is comparedwith the known likelihood of such indicia being scanned based uponfrequency of usage data associated with each indicia.

The invention extends to any one or more of the above features eithertaken alone or in any compatible combination.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may be carried out in a number of ways and one specificembodiment will now be described, by way of example, with reference tothe accompanying drawings of which:

FIG. 1 illustrates schematically a reader according to the presentinvention;

FIG. 2 illustrates schematically an item having a bar code symbolthereon being brought into the field of view of the reader;

FIG. 3 shows schematically a reader having a predetermined range ofreading distances;

FIG. 4 shows an alternative embodiment of the scanner shown in FIG. 1;

FIG. 5 shows a block diagram showing the operation of an embodiment ofthe invention; and

FIG. 6 shows a flow chart showing the operation of an embodiment of theinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A reader 1 comprising a light generating means and a light detectingmeans (not shown) is shown in FIG. 1. A scanning light beam 2 from thereader 1 scans a bar code symbol 3 on a target item to be scanned 4. Forexample, the item 4 may be one of a plurality of items to be purchasedbeing scanned at a supermarket point of sale. It is desired, however, toscan only one item at a time, as each item is being presented to thereader, and to ensure that bar code symbols on other items such as thosedenoted by reference numeral 5 are not read at the same time, as thiswill give rise to an erroneous signal and incorrect information. Theadditional items 5 could, for example, be products which have alreadybeen scanned forming part of the same purchase as item 4 or items forsale on nearby stands such as magazines on a magazine rack.

In order to distinguish between the item 4 and other nearby items 5 oneapproach taken by the present invention is to provide means associatedwith the reader for distinguishing between an item specificallypresented to the field of view of the reader 1 and other items nearby.As shown in FIG. 2 the item 4 containing the indicia 3 to be scanned ispresented to the reader 1 by a sales assistant 6 by moving the selecteditem 4 into the field of view of the reader (see arrow 7). The item caneither be moved in and out of the field of view in a continuous actionor moved into the field of view, and then held stationary for apredetermined period. In either case the selected item can thus bedistinguished from the other items 5.

One means of distinguishing between the selected item and other itemsmakes use of comparing the scan count associated with repetitivelyscanning the selected item. Typically the beam is scanned at 30 scansper second. Accordingly, when an item 4 carrying a bar code symbol 3 isswept past the reader 1 (sweep-through mode) the bar code symbol 3 willbe scanned a given number of times dependent on the length of time thatthe item 4 spends in the field of view ("dwell time"). For example, ifthe item 4 remains in the field of view for one second then the bar codesymbol 3 will be scanned thirty times. Conversely an item 5 that remainsstationary in the field of view will be scanned an unlimited number oftimes. Accordingly the bar code symbol 3 on the item 4 to be selectedcan be distinguished from bar code symbols on other items 5 byconsidering the dwell time of the item, that is, by comparing the numberof scans for different bar code symbols and ignoring all signalscorresponding to bar codes having a dwell time greater than apredetermined period.

Similarly, when a selected item 4 is moved into the field of view, heldstationary for a given period and then moved out of the field of view(presentation mode) it will have a shorter dwell time than other itemsremaining stationary in the field of view. The reader can be programmedto select one or other modes of reading i.e. either the sweep-throughmode or the presentation mode. The dwell time can, of course, beprogrammed to any desired period. A trigger or other manually operablecontrol can be provided for setting the various parameters of operation.Where the reader 1 comprises a static beam, field of view opticalsystem, instead of considering the number of scans that have been madeof respective bar code symbols, the period of time during which the barcode symbol has been detected may be taken into consideration.

Alternatively, the means provided on the reader 1 for distinguishingbetween the selected item 4 and the other items 5 may comprise a motiondetector. Various motion detectors are known, for example a pulsed infrared light beam, Doppler effect detectors or ultrasound pulse detectors.In addition using several detectors spaced at different locations apositional detector may be included which locates the selected itemusing trigonometrical calculations. Accordingly the selected item can bedetected and its position located in order for its bar code symbol to beread in isolation, the reflected light from symbols on other itemsnearby being ignored by the reader.

Instead of the selected item 4 being simply swept past the reader 1 theitem could be moved into the field of view, held stationary for a periodof time and then moved out of the field of view. In that case the readerwould identify the item either by virtue of it being moved into thefield of view, or by detecting that it was held stationary for apredetermined period of time in between being moved into and out of thefield of view.

In an alternative arrangement the reader 1 includes means fordistinguishing between a target having a bar code symbol positionedwithin a predetermined distance range or zone from the reader and otheritems 5 outside that range. Such an arrangement is shown in FIG. 3, thepredetermined distance range being given as A. The distance range Acould also be limited to a narrow range of angles bounded by lines B andC so that only items in a small zone of distances would be read. Onemeans of estimating the distance to the selected item 4 would be bycomparing the relative apparent sizes of bar code symbols appearing onitems at different distances. Typically bar code symbols on all itemswithin a given store or inventory system will be of a standard size.Accordingly, bar code symbols on items closer to the reader will appearlarger than bar code symbols on items that are further away and thescanning beam will spend a larger proportion of its time scanning eachelement of the bar code symbol on a closer item than on an item furtheraway. Thus, for a standard density symbol, the distance to the readercan be derived. Accordingly, a given distance range can be selected byignoring signals relating to bar code symbols having sizes outside apredetermined range, the predetermined range being based on theproportion of time that a scanning beam spends traversing the bar codesymbol. Such a distance range could to be, for example, in the range ofthree to nine inches (7.5-22.5 cm). Where the reader 1 comprises astatic beam, field of view optical arrangement, the size of the image ofthe bar code symbol detected by, for example, the scan time from "start"to "stop" characters by a laser scanner, or the distance between eachcharacter as detected by a CCD device can be used to establish whetherthe item is within the predetermined distance range. Alternatively thereader 1 could include a proximity detector which, when it detecteditems placed within the distance range or reading zone would activatethe bar code reader.

FIG. 4 shows an alternative embodiment in which a hand-held scanner 8 isused instead of the stationary bar code reader 1.

In a further variation, it will be noted that in, for example, a givensupermarket or inventory system only certain goods will be carried inwhich case a memory file containing records of all bar codes assigned tothe various goods will be correspondingly limited. For example, in asupermarket, the house computer will carry the bar codes for all of thegoods carried by a store so that if a bar code that is not familiar tothe house computer is detected then it can be immediately identified. Inaddition, where a misread takes place which casts doubt on a giveninteger of a bar code then comparison can be made with the stored codesto arrive at the most likely correct code corresponding to the itemread.

The operation of the embodiment will now be described in more detailwith reference to FIGS. 5 and 6. As shown in the block diagram of FIG. 5a bar code symbol 9 is detected by an optical system 10 including aphotodetector and amplifier 11 and information relating to the bar codesymbol is digitized by a digitizer circuit 12, the digitized informationbeing decoded by a decoder 13. The decoded information is then comparedwith information already stored in a database 14. The database 14contains information concerning, for example, all codes that are used inthe system, the frequency of usage of each code, and details of codesthat are currently not in use. FIG. 6 shows the process by which thecomparison is made. The scan is first obtained 15! and decoded 16! and acomparison is made with stored codes 17!. If the code is recognized 18!that is, if it corresponds with a stored code, it is noted as a validcode 19! and the valid code is processed 20!. Code recognition iscarried out on a "probabilistic" basis that is to say, the relativeprobabilities of the bar code symbol representing a given code arecompared and the code with the highest probability selected. As asimplified example the bar code symbol may be read and decoded, a 10%probability assigned to the code being, for example, "123" and a 90%probability of the code being "124". If the code having the highestprobability is not valid and does not correspond with a stored code,then the validity of the next most probable code ("123" in thesimplified example) is evaluated 21! and if it is valid 23!, it is thenprocessed 20! and is sent to an output 22 shown in FIG. 5. If no validcode is recognized, or if the probability of the code being a valid codeis below a given threshold value or confidence level 24! then theresults of the scan are rejected 25!. In order to compute the mostlikely valid code, information as to the frequency of usage of thestored codes can be taken into consideration.

A further application of the invention is envisaged where a list of barcodes is provided on a card and is read by a hand-held scanner. Such alist may comprise codes corresponding to a set of instructions forprogramming the reader or to the bar code symbols for a list of goodsinformation concerning which is to be read by the bar code reader, forexample, a menu. Generally in those cases it is necessary to provide areader which is switched on and off for each bar code symbol, forexample using a trigger. Such an arrangement is, of course, timeconsuming, and may lead to inaccuracies introduced by human error. Thatproblem can, however, be overcome by using the "dwell time" principlediscussed above in which a continuously reading beam is moved along thebar codes to be scanned, each bar code symbol is read and thecorresponding information recorded once the beam has dwelled on that barcode symbol for a predetermined number of scans and hence period oftime. That arrangement would reduce the possibility of accidental reads.In addition, where successive bar code symbols were identical thearrangement would cut down the likelihood of the two symbols being readas a single symbol, as, after the reader had read the first symbolbefore the predetermined dwell time it would record the correspondingcode and then recognize that a further, identical code thereafter wasalso to be read.

It will be appreciated that the invention could be used in manyapplications other than point of sale bar code scanning. For example,the invention could be used in stock-taking or inventorying of goods. Inaddition, the invention is not restricted to reading bar codes, butextends to reading any appropriate indicia where it is desired to read aselected item in preference to nearby items.

The reader can include a scanning beam or a fixed spot beam and the beamgenerating means and beam detecting means can be provided on a commonbody or separately.

We claim:
 1. An arrangement for minimizing reading errors in a systemfor electro-optically reading indicia by scanning at least one of alight beam and a field of view over an indicium to generate a codecorresponding to the indicium being scanned, said arrangementcomprising:a database containing stored codes for all indicia to be readby the system; and a processor for comparing the code of the indiciumbeing scanned with the stored codes, and for processing the code of theindicium being scanned as a valid code upon determining that the codematches one of the stored codes, and for storing in the databasefrequency of usage data indicative of how often the code of the indiciumbeing scanned matched one of the stored codes, said processor beingfurther operative for selecting from the stored codes in the database amost likely code as the valid code based upon the stored frequency ofusage data upon failing to match the code of the indicium being scannedto one of the stored codes and for processing the most likely code asthe valid code to reduce the reading errors.
 2. The arrangement asclaimed in claim 1, wherein the processor assigns relative probabilitiesto the code of the indicium being scanned, and selects as the mostlikely code the code having the highest probability.
 3. The arrangementas claimed in claim 2, wherein the processor rejects the code of theindicium being scanned when the assigned probability is less than athreshold value.
 4. The arrangement as claimed in claim 1, wherein thedatabase stores each stored code as digitized and decoded informationindicative of a bar code symbol.
 5. The arrangement as claimed in claim1, wherein the database also stores inactive codes of indicia no longerin use.
 6. The arrangement as claimed in claim 1, wherein the processoris mounted on a hand-held housing.
 7. The arrangement as claimed inclaim 6, wherein the housing includes a light source for emitting thelight beam, and a sensor for detecting light reflected off the indiciabeing scanned and for generating an electrical signal indicative of thedetected light intensity.
 8. The arrangement as claimed in claim 7,wherein the housing includes a digitizer for digitizing the electricalsignal into a digitized signal, and a decoder for decoding the digitizedsignal.
 9. A method of minimizing reading errors in a system forelectro-optically reading indicia by scanning at least one of a lightbeam and a field of view over an indicium to generate a codecorresponding to the indicium being scanned, said method comprising thesteps of:storing stored codes for all indicia to be read by the system;comparing the code of the indicium being scanned with the stored codes,and processing the code as a valid code upon determining that the codematches one of the stored codes, and storing frequency of usage dataindicative of how often the code of the indicium being scanned matchedone of the stored codes: and selecting a most likely code as the validcode based upon the stored frequency of usage data upon failing to matchthe code to one of the stored codes, and processing the most likely codeas the valid code to reduce the reading errors.
 10. The method asclaimed in claim 9; and further comprising the steps of assigningrelative probabilities to the code of the indicium being scanned, andselecting as the most likely code the code having the highestprobability.
 11. The method as claimed in claim 10; and furthercomprising the step of rejecting the code of the indicium being scannedwhen the assigned probability is less than a threshold value.
 12. Themethod as claimed in claim 9, wherein each stored code is digitized anddecoded information indicative of a bar code symbol.
 13. The method asclaimed in claim 9; and also storing inactive codes of indicia no longerin use.
 14. The method as claimed in claim 9; and further comprising thesteps of performing the comparing, processing and selecting steps in ahand-held housing.
 15. The method as claimed in claim 14; and furthercomprising the steps of emitting the light beam from the housing, anddetecting light reflected off the indicia being scanned and generatingan electrical signal indicative of the detected light intensity.
 16. Themethod as claimed in claim 15; and further comprising the steps ofdigitizing the electrical signal into a digitized signal, and decodingthe digitized signal.